/**
 * Title: DepartmentService.java
 * @author WuJin
 * @date 2020年6月20日
 * @version 1.0
 */
package com.pm.service.dept;

import com.pm.entity.dto.dept.DeptTypeScoreDto;
import com.pm.entity.po.dept.DepartmentScore;
import com.pm.entity.po.dept.EvaluateTaskPo;
import com.pm.entity.vo.ScoreSummaryVo;
import com.pm.entity.vo.dept.DepartmentScoreVo;
import com.pm.entity.vo.dept.DeptQuarterScoreVo;
import com.pm.entity.vo.dept.DeptTaskNumVo;
import com.pm.entity.vo.dept.DeptTypeTaskScoreVo;
import com.pm.service.BaseService;

import java.util.List;

/**
 * Title: DepartmentService
 *
 * @author WuJin
 * @date 2020年6月20日
 */
public interface DepartmentScoreService extends BaseService<DepartmentScore> {
    List<DepartmentScoreVo> getListDepartmentSocre(DepartmentScore departmentScore);

    Integer update1(DepartmentScore departmentScore);

    /**
     * 修改审核状态为通过或驳回
     */
    Integer update2(DepartmentScore departmentScore);

    void addAll(List<DepartmentScore> departmentScore);

    /**
     * 评分总汇
     */
    List<ScoreSummaryVo> getScoreSummary(Integer type);

    /**
     * 重点工作评分总汇
     */
    List<ScoreSummaryVo> getScoreSummaryTask(ScoreSummaryVo scoreSummaryVo);

    /**
     * 删除部门打分
     */
    Integer removeDepartmentScore(DepartmentScore departmentScore);

    /**
     * 根据部门id，年，季度查询各任务的分数
     * @param deptTaskNumVo
     * @return
     */
    List<EvaluateTaskPo> getScoreByDeptId(DeptTaskNumVo deptTaskNumVo);

    /**
     * 根据部门id查询各季度任务的分数
     * @param deptTaskNumVo
     * @return
     */
    List<DeptQuarterScoreVo> getQuarterScoreByDeptId(DeptTaskNumVo deptTaskNumVo);

    /**
     * 根据部门类型和重点工作id查询各部门得分
     * @param deptTypeTaskScoreVo
     * @return
     */
    List<DeptTypeScoreDto> getScoreByDeptTypeAndTaskId(DeptTypeTaskScoreVo deptTypeTaskScoreVo);
}
